Method and device for generating sounds effects for a game

ABSTRACT

An electronic device with one or more processors and memory stores one or more respective sound effect units in association with each of a plurality of scene elements used in a game. The electronic device obtains a scene element template for a respective scene in the game, the scene element template including one or more constituent scene elements of the respective scene. The electronic device also selects one or more corresponding sound effect units for each of the one or more constituent scene elements in the scene element template for the respective scene. The electronic device further generates a composite sound effect for the respective scene using the selected sound effect units.

RELATED APPLICATIONS

This application is a continuation application of PCT Patent ApplicationNo. PCT/CN2013/088385, entitled “METHOD AND DEVICE FOR GENERATING SOUNDSEFFECTS FOR A GAME” filed Dec. 3, 2013, which claims priority to ChinesePatent Application Serial No. 201210571986.9, entitled “Method andTerminal for Generating Sounds Effects for a Game” filed Dec. 25, 2012,the entirety of both of which is incorporated herein by reference.

FIELD OF THE INVENTION

The present disclosure relates to the field of Internet technologies,and more particularly to a method and device for generating soundeffects for a game.

BACKGROUND OF THE INVENTION

With the development and popularization of the Internet, games havebecome one of the main applications utilizing the Internet. More andmore Internet users are participating in online games. In general, typesof Internet games include: large multi-player online games; stand-alonegames; online games supporting instant message; or other online games.Regardless of the game type, in the client-side portion of the game,audio generated for different in-game scenarios is played to enhance theuser's participation in the game.

However, in the conventional client-side portion of the game, thisrequires that sound effects corresponding to each in-game scenario orscene in-game is developed and created separately. Furthermore, soundeffects or in-game scenes become very monotonous, because the soundeffects are played repeatedly for the in-game scene. This brings aboutmusic fatigue for the player of the game and reduces the player'sexperience.

SUMMARY

The embodiments of the present application provide a method and devicefor generating sound effects for a respective scene of a game. In someembodiments, the method is performed at an electronic device with one ormore processors and memory (e.g., client device 702, FIGS. 7-8associated with a user playing the game or computing device 730, FIGS. 7and 10 associated with a developer of the game). The method includes:storing one or more respective sound effect units in association witheach of a plurality of scene elements used in a game; and obtaining ascene element template for a respective scene in the game, the sceneelement template including one or more constituent scene elements of therespective scene. The method also includes selecting one or morecorresponding sound effect units for each of the one or more constituentscene elements in the scene element template for the respective scene.The method further includes generating a composite sound effect for therespective scene using the selected sound effect units.

In some embodiments, an electronic device (e.g., client device 702,FIGS. 7-8 or computing device 730, FIGS. 7 and 10) each include one ormore processors and memory storing one or more programs for execution bythe one or more processors, the one or more programs includeinstructions for performing the operations of the methods describedherein. In some embodiments, a non-transitory computer readable storagemedium storing one or more programs, the one or more programs comprisinginstructions, which, when executed by an electronic device (e.g., clientdevice 702, FIGS. 7-8 or computing device 730, FIGS. 7 and 10) each withone or more processors, cause the electronic device to perform theoperations of the methods described herein.

Various advantages of the present application would be apparent in lightof the descriptions below.

BRIEF DESCRIPTION OF THE DRAWINGS

The aforementioned features and advantages of the invention as well asadditional features and advantages thereof will be more clearlyunderstood hereinafter as a result of a detailed description ofpreferred embodiments when taken in conjunction with the drawings.

In order to explain the technical program in the embodiment of thepresent application clearly, the following will briefly introduce theattached drawings required in the description of the embodiment or theconventional technology, obviously, the drawings in the followingdescription are only some embodiments of the present application, forthe common technicians of this field, they can also obtain otherdrawings according to these drawings without any creative labor.

FIG. 1 is a flowchart diagram of a method of generating sound effectsfor a respective scene of a game in accordance with some embodiments.

FIG. 2 is a block diagram of a data structure for a scene elementlibrary in accordance with some embodiments.

FIG. 3 is a block diagram of a data structure for a scene elementtemplate in accordance with some embodiments.

FIG. 4 is a flowchart diagram of a method of generating sound effectsfor a respective scene of a game in accordance with some embodiments.

FIG. 5 is a flowchart diagram of a method of generating sound effectsfor a respective scene of a game in accordance with some embodiments.

FIG. 6A is a structural diagram of an audio processing module forgenerating sound effects for a respective scene of a game in accordancewith some embodiments.

FIG. 6B is a structural diagram of an audio processing module forgenerating sound effects for a respective scene of a game in accordancewith some embodiments.

FIG. 7 is a block diagram of a server-client environment in accordancewith some embodiments.

FIG. 8 is a block diagram of a client device in accordance with someembodiments.

FIG. 9 is a block diagram of a server system in accordance with someembodiments.

FIG. 10 is a block diagram of a computing device in accordance with someembodiments.

Like reference numerals refer to corresponding parts throughout theseveral views of the drawings.

DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings. In the following detaileddescription, numerous specific details are set forth in order to providea thorough understanding of the subject matter presented herein. But itwill be apparent to one skilled in the art that the subject matter maybe practiced without these specific details. In other instances,well-known methods, procedures, components, and circuits have not beendescribed in detail so as not to unnecessarily obscure aspects of theembodiments.

The following gives specific description of embodiment of the presentapplication in combination of attached drawings.

FIG. 1 is a flowchart diagram of a method of generating sound effectsfor a respective scene of a game in accordance with some embodiments. Atleast in some embodiments, the method is performed by an electronicdevice (e.g., client device 702, FIGS. 7-8 associated with a userplaying the game or computing device 730, FIGS. 7 and 10 associated witha developer of the game) with one or more processors and memory, or oneor more components of the electronic device (e.g., client-side module704, FIGS. 7-8 or audio processing module 600/650, FIG. 10). In someembodiments, the method is governed by instructions that are stored in anon-transitory computer readable storage medium and that are executed byone or more processors of an electronic device (e.g., processor(s) 802of client device 702, FIG. 8 or processor(s) 1002 of computing device730, FIG. 10).

In some embodiments, prior to the storing, the electronic devicegenerates a scene element library containing a list of possible sceneelements for constructing game scenes (e.g., scene element library 200,FIG. 2). For example, the scene element library is generated based onthe scenes in the one or more video files for rendering the game. Inanother example, the scene element library is created by a developerthat matches possible scene elements with sound effect units. In someembodiments, the scene element library can be utilized for more than onegame.

The electronic device stores (102) one or more respective sound effectunits in association with each of a plurality of scene elements used ina game. In some embodiments, each game scene is described by acollection of one or more scene elements. For example, the sceneelements include participating game characters, items, weapons, actionsby the characters, effects of the actions or use of items,characteristics of the atmosphere or mood in the scene, orcharacteristics of the environment depicted in the scene, and the like.In some embodiments, a respective scene element (e.g., dragon, user'scharacter, companion character, horse, weapon, etc.) is associated witha set of sound effect units including different sound clips (e.g.,breath, roar, fire, laugh, a segment of descriptive music, etc.associated with the dragon) and/or transformations of a default soundclip (e.g., varying speed, pitch, intonation, instrument, etc.)associated with the scene element.

In some embodiments, the electronic device (e.g., associated with theuser playing the game) dynamically determines the respective sceneduring game play. For example, client device 702 dynamically determinesthe in-game scene and its constituent scene elements based on the videofile(s) being rendered for game play. In this example, client device 702determines the in-game scene based on the user's character'ssurroundings and/or in-game location.

The electronic device obtains (104) a scene element template for arespective scene in the game, the scene element template including oneor more constituent scene elements of the respective scene. In someembodiments, each in-game scene is associated with a scene elementtemplate. In some embodiments, the scene elements in the scene elementtemplate include characters, actions, items, moods, environmentelements, etc. For example, a scene element template associated with agame scene in which the user's character is rescuing another characterfrom a dragon includes: dragon, user's character, user's character'scompanion, user's character's rescuee being held by the dragon, user'scharacter's weapon, user's character's horse, and forest or otherin-game environments. In some embodiments, the scene element templatesare created by a developer for all cut-scenes in the game.

In some embodiments, the one or more scene elements in the scene elementtemplate are arranged according to a time sequence with a plurality oftime intervals. For example, a time sequence with a plurality of timeintervals or timestamps corresponds to the respective scene associatedwith the scene element template. Furthermore, one or more scene elementsare associated each of the time intervals or timestamps in the timesequence for the respective scene. In some embodiments, two or morescene elements are associated with a same time interval of the pluralityof time intervals in the time sequence. For example, if three sceneelements are associated with the same timestamp, the sound effect unitsassociated with the three scene elements are concatenated, mixed orprioritized.

In some embodiments, obtaining the scene element template for therespective scene includes generating the scene element template based onthe determined respective scene. In some embodiments, the scene elementtemplate is dynamically created by client device 702 associated with theuser playing the game. For example, client device 702 dynamicallycreates the scene element template to match the rendered scene for thegame.

In some embodiments, a template library including a plurality of sceneelement templates for a game is generated or predetermined by adeveloper (e.g., associated with computing device 730, FIGS. 7 and 10).Thereafter, the template library is stored at the user's electronicdevice (e.g., client device 702, FIGS. 7-8) in one of the game filesassociated with the game and obtaining the scene element template forthe respective scene includes selecting a scene element template for therespective scene from the template library.

The electronic device selects (106) one or more corresponding soundeffect units for each of the one or more constituent scene elements inthe scene element template for the respective scene. In someembodiments, the one or more sound effect units for each of the sceneelements corresponding to the respective scene are intelligentlyselected based on the other scene elements in the scene element templatefor the respective scene. In some embodiments, the one or more soundeffect units for a respective scene element corresponding to therespective scene are randomly selected from a set of sound effect unitsassociated with the respective scene element.

The electronic device generates (108) a composite sound effect for therespective scene using the selected sound effect units. In someembodiments, the sound effect units are concatenated (or applied, incases where the sound effect unit is a transformation) according totheir temporal order in the scene element template (e.g., determined bythe time sequence) to generate the composite sound effect for therespective scene.

In some embodiments, after generating the composite sound effect for therespective scene, the electronic device presents the composite soundeffect in real-time during game play. In some embodiments, the compositesound effect is generated at computing device 730 associated with thedeveloper and stored for later use at client device 702 associated withthe user playing the game.

In some embodiments, the electronic device dynamically generates thecomposite sound effect during game play. In some embodiments, thecomposite sound effect is generated on-the-spot upon the user'scharacter reaching a location in-game or satisfying a condition (e.g.,finishing a level, unlocking an achievement, defeating a boss, etc.).For example, the composite sound effect is associated with a cut-scenebetween levels of the game. In this example, the composite sound effectis based at least in part on scene elements associated with a previouslevel (e.g., the user's character health and armor worn when finishingthe previous level, and environmental characteristics such as theweather in the environment when finishing the previous level).

In some embodiments, each of the selected sound effect units is randomlyselected from a set of respective sound effect units stored inassociation with a respective constituent scene element of the sceneelement template. In some embodiments, each of the selected sound effectunits is intelligently selected from a set of respective sound effectunits stored in association with a respective constituent scene elementof the scene element template based on the other scene elements in thescene element template. In some embodiments, the scene element templateincludes a pointer corresponding to a scene element in the scene elementlibrary and a sound effect unit associated with the scene element isselected at random from a set of sound effect units stored inassociation with the scene element in the database. In some embodiments,the sound effect units are selected according to user feedback from acommunity of users.

FIG. 2 is a block diagram of a data structure for a scene elementlibrary 200 in accordance with some embodiments. In some embodiments,scene element library 200 includes a plurality of scene elements (e.g.,organized into categories) and a set of sound effects units (e.g., oneor more sound effect units) corresponding to each scene element.

In FIG. 2, scene element library 200 includes a plurality of sceneelement categories: characters (e.g., including characters 1 through N);actions (e.g., including actions 1 through N); objects (e.g., includingobjects 1 through N); and environment features (e.g., environmentfeatures 1 through N).

In some embodiments, the character scene elements correspond to modelsand representations of different in-game characters and persons (e.g.,the user's character or the user's character's opponents andcompanions). For example, character 1 corresponding to a user createdcharacter for a game and the set of sound effect units associated withcharacter 1 includes sound clips of the user created character talkingor making noises or transformations to be applied to default sound clipssuch as differing tempos, accents, pitches, and intonations forcustomizing the character's voice. For example, character 2 correspondsto character 1's companion. In another example, character 2 correspondsto character 1's opponent.

In some embodiments, the action scene elements correspond to actionsperformed by the characters. For example, action 1 corresponds tofighting actions such as swordplay or hand-to-hand combat moves and theset of sound effect units associated with action 1 include sword impactand slashing sound clips and fist impact sound clips. For example,action 2 corresponds to footsteps and the set of sound effect unitsassociated with action 2 include heavy footsteps, light footsteps,shuffling footsteps, and the like.

In some embodiments, the objects correspond to implements or articles inthe game environment such as vehicles, weapons, a character's raimentand armor, and the like. For example, object 1 corresponds to a boltaction rifle and the set of sound effect units associated with object 1includes handling, cleaning, reloading, firing, recoiling, and spentshell sound clips. For example, object 2 corresponds to a character'shorse and the set of sound effect units associated with object 2includes whinnying, snorting, trotting, and galloping sound clips.

In some embodiments, the environment features correspond to theenvironment in which the user's character is located in the game such asa forest, a jungle, a serene field, a crowded city street, abattlefield, a castle court or feasting hall, and the like. For example,environment feature 1 corresponds to a battlefield and the set of soundeffect units associated with environment feature 1 includes yelling,crying, exploding shells, rally cries, singing, gun fire, projectiles inflight, smoldering fires, and the like. For example, environment feature2 corresponds to a serene field or meadow and the set of sound effectunits associated with environment feature 2 includes birds chirping,bugs buzzing, wind blowing, trees and plants rustling, and the like.

FIG. 3 is a block diagram of a data structure for a respective sceneelement template 300 in accordance with some embodiments. In someembodiments, each game scene is described by a collection of one or morescene elements. In FIG. 3, scene element template 300 includes aplurality of scene elements arranged according to a time sequence. InFIG. 3, a subset of scene elements is associated with each of theplurality of time intervals in the time sequence.

In some embodiments, each scene element in scene element template 300includes a pointer to the scene element's corresponding entry in sceneelement library 200. As such, the electronic device is enabled to obtainone or more sound effect units associated with the scene elements inscene element template 300.

In FIG. 3, a time sequence with a plurality of time intervals 302(sometimes also called timestamps) (e.g., including time intervals 302-1through 302-N) corresponds to respective scene element template 300. InFIG. 3, each time interval in the time sequence corresponding torespective scene element template 300 is associated with a subset ofscene elements (e.g., one or more scene elements). For example, timeinterval 302-1 is associated with scene elements 304-1 through 304-M,time interval 302-2 is associated with scene elements 306-1 through306-M, time interval 302-3 is associated with scene elements 308-1through 308-M, and time interval 302-N is associated with scene elements310-1 through 310-M.

For example, scene element template 300 corresponds to a stylizedcut-scene prior to a boss fight that ends a level of a game. In thisexample, the scene includes three time intervals: time interval 302-1corresponding to the boss flying onto the screen, time interval 302-2corresponding to the boss jumping out of his vehicle; and time interval302-3 corresponding to the boss attempting to intimidate the user'scharacter. Continuing with this example, a first subset of sceneelements associated with time interval 302-1 includes the boss (e.g., analien or other monster), the boss' flying craft (e.g., a single occupanthovercraft-like vehicle), the boss' henchmen (e.g., a group of smalleraliens or monster), and a deserted city environment (e.g., a ruined anddesolate city). Continuing with this example, a second subset of sceneelements associated with time interval 302-2 includes the boss, the bossleaping from the flying craft, the boss shattering the floor uponlanding, and the boss' henchman greeting the boss. Continuing with thisexample, a third subset of scene elements associated with time interval302-3 includes the boss, the boss transforming into a larger, strongerform, the boss breathing fire, the boss breaking an object over hisknee, and the boss cackling at the user's character. In this example,each of the aforementioned scene elements in scene element template 300includes a pointer to a corresponding scene element in scene elementlibrary 200 that is associated with a set of sound effect units. In thisexample, a composite sound effect is created for the stylized cut-scenecorresponding to scene element template 300 by selecting a sound effectunit for each of the scene element in scene element template 300 andconcatenating or mixing the sound effect units associated with each timeinterval.

FIG. 4 is a flowchart diagram of a method of generating a sound effectfor a respective scene of a game in accordance with some embodiments.

In some embodiments, regardless of whether a user plays a multi-playernetwork game (e.g., an MMORPG) or a single player game (e.g., an RPG),the user is required to log into the game via a client-side moduleassociated with the game executed by the client device in order to takepart in the game. In some embodiments, the client device stores variousfiles for the game including, without limitation, one or more game musicfiles, video files, system configuration files, user data files, etc.Among which, the one or more game music files include various soundeffect files, which include (without limitation) action sound effects aswell as environment sound effects.

When development and design personnel (sometimes also referred to as the“developer”) need to develop and generate a sound effect file for agame, the developer is involved in making sound effects through an audioprocessing user interface displayed by an electronic device (e.g.,computing device 730, FIGS. 7 and 10) or a component thereof (e.g.,audio processing module 600/650, FIG. 10).

In some embodiments, the electronic device receives (402) a commandselecting one or more scene elements for a respective scene (e.g., fromthe developer).

In some embodiments, the scene elements (e.g., in scene element library200) are saved in the electronic device in advance. In some embodiments,the electronic device is enabled to generate a scene element library fora game that is read from storage media according to in-game scenes orscenarios. In both cases, matching and classifying scene elements togenerate scene element library 200 is conducted in accordance withdifferent screening strategies. In some embodiments, the classifiedscene elements are presented to the developer through an audioprocessing user interface with a plurality of option buttons ofdifferent colors, allowing the developer to select a scene element frommultiple option buttons based on different demands. In some embodiments,each type of scene element is displayed with option buttons of the samecolor (e.g., all action scenes elements are associated with blue buttonsand all character scene elements are associated with green buttons). Insome embodiments, the option buttons are displayed with the same colorand are individually named to distinguish between the option buttons.

For example, when the developer needs to generate a sound effect for arespective scene in a game, the developer is enabled to select sceneelements corresponding to the scene from the option buttons in the audioprocessing user interface. In this example, the electronic devicereceives the scene element selections from the developer via the userinterface.

The electronic device collects (404) sound effect units according to theone or more selected scene elements for the respective scene. In someembodiments, the developer selects different scene elements for arespective scene (e.g., step 402), and in response to these selections,the electronic device is required to collect sound effect unitsassociated with the selected scene elements.

In some embodiments, the respective scene includes a time sequence wherea subset of scene elements is associated with each time interval ortimestamp in the time sequence. For example, the developer selects asubset of one or more scene elements for a first time interval in thetime sequence for the respective scene and a different subset of one ormore select different scene elements for the last time interval in thetime sequence for the respective scene. Continuing with this example,the electronic device collect sound effect units associated with the twoor more subsets of scene elements after the developer selects anaffordance or button in the audio processing user interface indicatingthat the developer is finished selecting scene elements for therespective scene.

The electronic device combines (406) the collected sound effect units togenerate a composite sound effect for the respective scene in responseto receiving a combination command. In some embodiments, the electronicdevice generates the composite sound effect for the respective scene bycombining the collected sound effect units based on the order in whichthe scene elements units were selected or intelligently based on theselected scene elements. In some embodiments, the composite sound effectis a concatenation of two or more sound effect units.

The method of generating sound effects provided by the presentapplication allows a developer to select and combine scene elements fora respective scene in a game, followed by generating a sound effect forthe respective scene. This allows the developer to generate differentsound effects for a respective scene based on scene elements which leadsto differing music experience of a player of the game depending on thescene elements of the respective scene. When the developer modifies orgenerates a new sound effect for a respective scene via the audioprocessing user interface provided by the electronic device, there is noneed to alter the underlying audio files of the game. This improves theefficiency of generating sound effects, and, in addition, there is noneed to separately develop each sound effect for a scene instead soundeffect units from the original audio files are combined to generate thesound effect for the scene. Thus, development time is reduced, andefficiency of generating sound effects is improved.

FIG. 5 is a flowchart diagram of a method of generating sound effectsfor a respective scene of a game in accordance with some embodiments.

In some embodiments, regardless of whether a user plays a multi-playernetwork game (e.g., an MMORPG) or a single player game (e.g., an RPG),the user is required to log into the game via a client-side moduleassociated with the game executed by the client device in order to takepart in the game. In some embodiments, the client device stores variousfiles for the game including, without limitation, one or more game musicfiles, video files, system configuration files, user data files, etc.Among which, the one or more game music files include various soundeffect files, which include (without limitation) action sound effects aswell as environment sound effects.

When development and design personnel (sometimes also referred to as the“developer”) need to develop and generate a sound effect file for agame, the developer is involved in making sound effects through an audioprocessing user interface displayed by an electronic device (e.g.,computing device 730, FIGS. 7 and 10) or a component thereof (e.g.,audio processing module 600/650, FIG. 10).

The electronic device receives (502) a command to generate a sceneelement library. In some embodiments, the developer sends the command byselecting an affordance or button of the audio processing user interfaceprovided by the electronic device. For example, the audio processinguser interface provides an affordance or button (e.g., corresponding toa scene element library generation command) that when selected causesthe electronic device to (A) split audio file(s) associated with thegame into sound effect units, (B) split game scenes into scene elements,and (C) generate the scene element library by associating one or moresound effect units with each scene element.

The electronic device splits (504) the audio file(s) for the game intosound effect units. For example, the sound effect units are associatedwith game actions or game environments.

For example, sound effect units associated with game actions include butare not limited to: sound effects of skills of the user's character suchas magic spells initiating and releasing, and user's character'sopponent being stricken by the magic spell; weapon wielding soundeffects such as slashing, waving, dropping, and breaking wind; soundeffect of various physical strikes to the user's character and theuser's character's opponent; sound effects of various environmentalmaterials fragmenting such as trees splintering, windows shattering, andwalls breaking; sound effect of materials exploding such as depthcharges, bombs, other munitions, and gasoline or chemical explosions;sound effects of characters falling and moving; sound effects ofcharacters fighting, talking, and shouting; sound effects of footstepsof characters, animals, robots and vehicles moving; and the like.

For example, sound effect units associated with the game environmentinclude but are not limited to: water, forest, horror, weather related(e.g., wind, rain, lightning, snow, etc.), and white noise environmentalsound effects.

The electronic device splits (506) scenes of the game into sceneelements. For example, for a game scene where the user's character ischarging into battle, the scene elements include but are not limited to:the user's character (e.g., a warrior, sorcerer, squire, dragoon, etc.);the user's character's weapon(s); the user's character's raiment andarmor; the user's character's vehicle (e.g., a horse, chariot, etc.);the battle's location or surrounding environment (e.g., castle, openfield, desolate world, etc.); the user's character's opponent(s); theuser's character's companion(s); weapon wielding actions of the user'scharacter and the user's character's opponent (e.g., slash, parry,dodge, stab, etc.); and other scene elements.

The electronic device associates (508) one or more sound effect unitswith each scene element to generate a scene element library (e.g., sceneelement library 200). In some embodiments, the associating includesmatching and classifying the scene elements with a set of sound effectunits according to different screening strategies.

In some embodiments, screening strategy can include matching the soundeffect units to scene elements based on different levels or differentcategories. For example, a set of sound effect units associated with afire spell action includes: the first fire skill releaseEffect_Fire_Fire_A, the second fire skill release Effect_Fire_Fire_B,and the third fire skill loop Effect_Fire_Hold_C. In another example, aset of sound effect units associated with a jumping action for a monsterincludes: a big monster jump Big_M_Jump, a middle monster jumpMid_M_Jump, and small monster jump Small_M_Jump.

In some embodiments, after the electronic device generates the sceneelement library, an audio processing user interface displayed by theelectronic device enables the developer to select scene elements for arespective scene in the game via affordances or option buttons ofdifferent colors in the user interface.

The electronic device receives (510) a command selecting one or morescene elements for a respective scene (e.g., from the developer). Forexample, when the developer needs to generate a sound effect for arespective scene in a game, the developer is enabled to select sceneelements corresponding to the scene from the option buttons in the audioprocessing user interface. In this example, the electronic devicereceives the scene element selections from the developer via the userinterface.

The electronic device collects (512) sound effect units according to theone or more selected scene elements for the respective scene. In someembodiments, the developer selects different scene elements for arespective scene (e.g., step 402), and in response to these selections,the electronic device is required to collect sound effect unitsassociated with the selected scene elements.

In some embodiments, the respective scene includes a time sequence wherea subset of scene elements is associated with each time interval ortimestamp in the time sequence. For example, the developer selects asubset of one or more scene elements for a first time interval in thetime sequence for the respective scene and a different subset of one ormore select different scene elements for the last time interval in thetime sequence for the respective scene. Continuing with this example,the electronic device collect sound effect units associated with the twoor more subsets of scene elements after the developer selects anaffordance or button in the audio processing user interface indicatingthat the developer is finished selecting scene elements for therespective scene.

The electronic device receives (514) a command to combine the collectedsound effect units. In some embodiments, the developer sends the commandby selecting an affordance or button of the audio processing userinterface provided by the electronic device. For example, the audioprocessing user interface provides an affordance or button (e.g.,corresponding to a combination command) that when selected causes theelectronic device to combine the sound effect elements of the collectedsound effect elements for the one or more selected scene elements of therespective scene to generate a composite sound effect for the respectivescene.

The electronic device combines (516) the collected sound effect units togenerate a composite sound effect for the respective scene in responseto receiving a combination command. In some embodiments, the electronicdevice generates the composite sound effect for the respective scene bycombining the collected sound effect units based on the order in whichthe scene elements units were selected or intelligently based on theselected scene elements. In some embodiments, the composite sound effectis a concatenation of two or more sound effect units.

In one example, a sound effect for a game scene of a monster attackingthe user's character includes a subset one or more scene elements ateach of two time intervals for the game scene. In this example, a firsttime interval for the monster jumping into the air includes “jump” and“monster shouting” scene elements, and the second time interval for themonster landing includes “weapon breaking wind,” “monster shouting,”“ground exploding,” “rock fragmenting,” and “landing” scene elements. Inthis example, sound effect units for the scene elements in the firsttime interval are concatenated, and sound effect units for the sceneelements in the second time interval are concatenated. The two sequencesof concatenated sound effect units are combined to generate a compositesound effect for the game scene corresponding to the monster attackingthe user's character.

In another example, a sound effect for a game scene introducing a hellenvironment in the game includes a plurality of scene elements. In thisexample, the game scene is a stylized cut-scene shown upon the usercompleting a previous level and the user's character starting a newlevel. Continuing with this example, the scene elements for the gamescene include “wind environment,” “low sound environment,” “horrorenvironment,” and “magma environment.” In this example, the sound effectunits are concatenated to generate a composite sound effect for the gamescene corresponding to introducing the hell environment (e.g., the startof a new level).

The method of generating sound effects provided by the presentapplication allows a developer to select and combine scene elements fora respective scene in a game, followed by generating a sound effect forthe respective scene. This allows the developer to generate differentsound effects for a respective scene based on scene elements which leadsto differing music experience of a player of the game depending on thescene elements of the respective scene. When the developer modifies orgenerates a new sound effect for a respective scene via the audioprocessing user interface provided by the electronic device, there is noneed to alter the underlying audio files of the game. This improves theefficiency of generating sound effects, and, in addition, there is noneed to separately develop each sound effect for a scene instead soundeffect units from the original audio files are combined to generate thesound effect for the scene. Thus, development time is reduced, andefficiency of generating sound effects is improved.

FIG. 6A is a structural diagram of an audio processing module 600 forgenerating sound effects for a game in accordance with some embodiments.

In some embodiments, audio processing module 600 includes interface unit602, receiving unit 604, collecting unit 606, and combining unit 608. Insome embodiments, audio processing module 600 is a component ofcomputing device 730 as shown in FIG. 10.

Interface unit 602 is configured to provide an audio processing userinterface for generating sound effects for the respective game. In someembodiments, the audio processing user interface is displayed by anoutput device (e.g., a touch-screen display) of computing device 730which is associated with a developer. For example, the audio processinguser interface includes a plurality of affordances option buttons forselecting scene elements for a respective scene and one or more commandaffordances or buttons for performing different audio processingcommands (e.g., scene element library generation and combinationcommands).

Receiving unit 604 is configured to receive user interactions withaffordances and buttons of the user interface by an input device (e.g.,a touch-screen display) of computing device 730 which is associated witha developer. In some embodiments, the affordances and buttons of theuser interface correspond to commands (e.g., scene element librarygeneration and combination commands) and scene elements.

Collecting unit 606 is configured to collect one or more sound effectunits corresponding to each of the selected scene elements. In someembodiments, the developer selects one or more option buttons on theuser interface corresponding to scene elements for a respective sceneand in response to these selections, collection unit 606 collects soundeffect units associated with the selected scene elements.

Combining unit 608 is configured to combine the collected sound effectunits to generate a composite sound effect for the respective scene. Insome embodiments, combining unit 608 is also configured to store thecomposite sound effect as a sound effect file corresponding to therespective scene. In some embodiments, the electronic device generatesthe composite sound effect for the respective scene by combining thesound effect units based on the order in which the scene elements unitswere selected or intelligently based on the selected scene elements. Insome embodiments, the composite sound effect is a concatenation of twoor more sound effect units.

The method of generating sound effects provided by the presentapplication allows a developer to select and combine scene elements fora respective scene in a game, followed by generating a sound effect forthe respective scene. This allows the developer to generate differentsound effects for a respective scene based on scene elements which leadsto differing music experience of a player of the game depending on thescene elements of the respective scene. When the developer modifies orgenerates a new sound effect for a respective scene via the audioprocessing user interface provided by the electronic device, there is noneed to alter the underlying audio files of the game. This improves theefficiency of generating sound effects, and, in addition, there is noneed to separately develop each sound effect for a scene instead soundeffect units from the original audio files are combined to generate thesound effect for the scene. Thus, development time is reduced, andefficiency of generating sound effects is improved.

FIG. 6B is a structural diagram of an audio processing module 650 forgenerating sound effects for a game in accordance with some embodiments.

In some embodiments, audio processing module 650 is similar to audioprocessing module 600 shown in FIG. 6A in that audio processing module650 includes interface unit 602, receiving unit 604, collecting unit 606and combining unit 608. However, audio processing module 650additionally includes a first splitting unit 652, a second splittingunit 654, and an associating unit 656. In some embodiments, audioprocessing module 600 is a component of computing device 730 as shown inFIG. 10.

First splitting unit 652 is configured to split the audio file(s) forthe game into sound effect units. For example, the sound effect unitsare associated with game actions or game environments.

Second splitting unit 654 is configured to split scenes of the game intoscene elements. In some embodiments, the game comprises one or morevideo files for rendering the game. For example, second splitting unit654 determines a plurality of scenes in the one or more video files andsplits the plurality of scenes into scene elements.

Associating unit 656 is configured to associate one or more sound effectunits with each scene element to generate a scene element library. Insome embodiments, the associating includes matching and classifying thescene elements with a set of sound effect units according to differentscreening strategies.

The method of generating sound effects provided by the presentapplication allows a developer to select and combine scene elements fora respective scene in a game, followed by generating a sound effect forthe respective scene. This allows the developer to generate differentsound effects for a respective scene based on scene elements which leadsto differing music experience of a player of the game depending on thescene elements of the respective scene. When the developer modifies orgenerates a new sound effect for a respective scene via the audioprocessing user interface provided by the electronic device, there is noneed to alter the underlying audio files of the game. This improves theefficiency of generating sound effects, and, in addition, there is noneed to separately develop each sound effect for a scene instead soundeffect units from the original audio files are combined to generate thesound effect for the scene. Thus, development time is reduced, andefficiency of generating sound effects is improved.

As shown in FIG. 7, in some embodiments, data processing for a game (orapplication) is implemented in a server-client environment 700. Dataprocessing for the game includes client-side game processing 704-1,704-2 (hereinafter “client-side module 704”) executed on a client device702-1, 702-2 and server-side game processing 708 (hereinafter“server-side module 708”) executed on a server system 706. Client-sidemodule 704 communicates with server-side module 708 through one or morenetworks 710. Client-side module 704 provides client-sidefunctionalities associated with a game such as client-facing input andoutput processing, communications with server-side module 708, and audioprocessing. Server-side module 708 provides server-side functionalitiesassociated with the game such as game play coordination for any numberof client modules 704 each residing on a respective client device 702.

In some embodiments, server-side module 708 includes processor(s) 712,user data 714, game data 716, an I/O interface to client(s) 718, and anI/O interface to developer(s) 720. I/O interface to client(s) 718facilitates the client-facing input and output processing forserver-side module 708. Processor(s) 712 receive requests fromclient-side module 704 associated with playing a game and coordinatinggame play between client modules 704. User data 714 stores data receivedfrom client-side modules 704 (e.g., game play parameters) and game data716 stores data associated with the game. In some embodiments,server-side module 708 communicates with computing device 730 (e.g.,associated with developer(s) of the game) through one or more networks710. For example, computing device 720 provides updates to game data 716such as new or modified audio files with new sound effects. I/Ointerface to system developer(s) 720 facilitates such communications.

Examples of client device 702 include, but are not limited to, ahandheld computer, a wearable computing device, a personal digitalassistant (PDA), a tablet computer, a laptop computer, a desktopcomputer, a cellular telephone, a smart phone, an enhanced generalpacket radio service (EGPRS) mobile phone, a media player, a navigationdevice, a game console, a television, a remote control, or a combinationof any two or more of these data processing devices or other dataprocessing devices.

Examples of one or more networks 710 include local area networks (“LAN”)and wide area networks (“WAN”) such as the Internet. One or morenetworks 710 are, optionally, implemented using any known networkprotocol, including various wired or wireless protocols, such asEthernet, Universal Serial Bus (USB), FIREWIRE, Global System for MobileCommunications (GSM), Enhanced Data GSM Environment (EDGE), codedivision multiple access (CDMA), time division multiple access (TDMA),Bluetooth, Wi Fi, voice over Internet Protocol (VoIP), Wi-MAX, or anyother suitable communication protocol.

Server system 706 is implemented on one or more standalone dataprocessing apparatuses or a distributed network of computers. In someembodiments, server system 706 also employs various virtual devicesand/or services of third party service providers (e.g., third-partycloud service providers) to provide the underlying computing resourcesand/or infrastructure resources of server system 706.

Although server-client environment 700 shown in FIG. 7 includes both aclient-side portion (e.g., client-side module 704) and a server-sideportion (e.g., server-side module 708), in some embodiments, dataprocessing is implemented as a standalone application installed on userdevice 702. In addition, the division of functionalities between theclient and server portions of client environment data processing canvary in different embodiments. For example, in some embodiments,client-side module 704 is a thin-client that provides only user-facinginput and output processing functions, and delegates all other dataprocessing functionalities to a backend server (e.g., server system706).

FIG. 8 is a block diagram illustrating a representative client device702 associated with a user in accordance with some embodiments. Clientdevice 702, typically, includes one or more processing units (CPUs) 802,one or more network interfaces 804, memory 806, and one or morecommunication buses 808 for interconnecting these components (sometimescalled a chipset). Client device 702 also includes a user interface 810.User interface 810 includes one or more output devices 812 that enablepresentation of media content, including one or more speakers and/or oneor more visual displays. User interface 810 also includes one or moreinput devices 814, including user interface components that facilitateuser input such as a keyboard, a mouse, a voice-command input unit ormicrophone, a touch-screen display, a touch-sensitive input pad, agesture capturing camera, or other input buttons or controls.Furthermore, some client devices 702 use a microphone and voicerecognition or a camera and gesture recognition to supplement or replacethe keyboard. Memory 806 includes high-speed random access memory, suchas DRAM, SRAM, DDR RAM, or other random access solid state memorydevices; and, optionally, includes non-volatile memory, such as one ormore magnetic disk storage devices, optical disk storage devices, flashmemory devices, or other non-volatile solid state storage devices.Memory 806, optionally, includes one or more storage devices remotelylocated from CPU(s) 802. Memory 806, or alternately the non-volatilememory device(s) within memory 806, includes a non-transitory computerreadable storage medium. In some implementations, memory 806, or thenon-transitory computer readable storage medium of memory 806, storesthe following programs, modules, and data structures, or a subset orsuperset thereof:

-   -   an operating system 816 including procedures for handling        various basic system services and for performing hardware        dependent tasks;    -   a network communication module 818 for connecting user device        702 to other computing devices (e.g., server system 706)        connected to one or more networks 710 via one or more network        interfaces 804 (wired or wireless);    -   a presentation module 820 for enabling presentation of        information (e.g., a user interface for a web page or an        application program, a game, audio and/or video content, text,        etc.) at client device 702 via one or more output devices 812        (e.g., displays, speakers, etc.) associated with user interface        810; and    -   an input processing module 822 for detecting one or more user        inputs or interactions from one of the one or more input devices        814 and interpreting the detected input or interaction.

In some embodiments, memory 806 also includes a client-side module 704for performing data processing for a respective game (or application)being executed by the user of client device 702. Client-side module 704includes, but is not limited to:

-   -   audio processing module 826 for generating audio (e.g., sound        effects) for the respective game, including but not limited to:        -   a storing unit 828 for storing a scene element library 830,            including a plurality of scene elements and a corresponding            set of sound effect units for each scene element;        -   a determining unit 832 for determining a respective scene in            the game being played by the user of client device 702;        -   a template obtaining unit 834 for obtaining a scene element            template (e.g., including one or more scene elements) that            corresponds to the respective in-game scene, optionally            including a template library 836 (e.g., including a            plurality of scene element templates);        -   a selecting unit 838 for selecting one or more corresponding            sound effect units for each of the one or more constituent            scene elements in the scene element template for the            respective in-game scene; and        -   a generating unit 840 for generating a composite sound            effect for the respective in-game scene using the selected            sound effect units and storing the composite sound effect as            a sound effect file associated with the respective scene in            audio file(s) 856; and    -   game files 850 corresponding to the respective game, including        but not limited to:        -   game music files 852, including but not limited to:            -   a background music file 854 including a soundtrack or a                plurality of music files to be played in the background                while playing the respective game; and            -   one or more audio files 856 including sound effect files                and/or sound clips for various scenes or events in the                respective game (e.g., at least one sound effect file                for each scene);        -   one or more video files 858 including information for            rendering the respective game;        -   a system configuration file 860 including a plurality of            parameters associated with audio processing; and        -   a user data file 862 including information associated with            the user's in-game actions.

Each of the above identified elements may be stored in one or more ofthe previously mentioned memory devices, and corresponds to a set ofinstructions for performing a function described above. The aboveidentified modules or programs (i.e., sets of instructions) need not beimplemented as separate software programs, procedures, modules or datastructures, and thus various subsets of these modules may be combined orotherwise re-arranged in various implementations. In someimplementations, memory 806, optionally, stores a subset of the modulesand data structures identified above. Furthermore, memory 806,optionally, stores additional modules and data structures not describedabove.

FIG. 9 is a block diagram illustrating server system 706 in accordancewith some embodiments. Server system 706, typically, includes one ormore processing units (CPUs) 712, one or more network interfaces 904(e.g., including I/O interface to client(s) 718 and I/O interface todeveloper(s) 720), memory 906, and one or more communication buses 908for interconnecting these components (sometimes called a chipset).Memory 906 includes high-speed random access memory, such as DRAM, SRAM,DDR RAM, or other random access solid state memory devices; and,optionally, includes non-volatile memory, such as one or more magneticdisk storage devices, optical disk storage devices, flash memorydevices, or other non-volatile solid state storage devices. Memory 906,optionally, includes one or more storage devices remotely located fromthe CPU(s) 712. Memory 906, or alternately the non-volatile memorydevice(s) within memory 906, includes a non-transitory computer readablestorage medium. In some implementations, memory 906, or thenon-transitory computer readable storage medium of memory 906, storesthe following programs, modules, and data structures, or a subset orsuperset hereof:

-   -   an operating system 910 including procedures for handling        various basic system services and for performing hardware        dependent tasks;    -   a network communication module 912 that is used for connecting        server system 706 to other computing devices (e.g., client        devices 702 and computing device 730) connected to one or more        networks 710 via one or more network interfaces 904 (wired or        wireless);    -   a server-side module 708 for performing data processing for a        respective game (or application), including but not limited to:        -   a request unit 914 for receiving requests from client            devices 702;        -   a login unit 916 for authenticating user credentials for            game play;        -   an multiplayer unit 918 for coordinating communication            between client modules and enabling multiple players to play            a same game session; and        -   a transmission unit 920 for sending data to client devices            702; and    -   one or more server data modules 922 for storing data related to        server system 706, including but not limited to:        -   user data 714 including data associated with users playing            the game; and        -   game data 716 including information for rendering and            executing the game.

Each of the above identified elements may be stored in one or more ofthe previously mentioned memory devices, and corresponds to a set ofinstructions for performing a function described above. The aboveidentified modules or programs (i.e., sets of instructions) need not beimplemented as separate software programs, procedures, or modules, andthus various subsets of these modules may be combined or otherwisere-arranged in various implementations. In some implementations, memory906, optionally, stores a subset of the modules and data structuresidentified above. Furthermore, memory 906, optionally, stores additionalmodules and data structures not described above.

FIG. 10 is a block diagram illustrating a computing device 730 (e.g.,associated with a developer of a respective game) in accordance withsome embodiments. Computing device 730, typically, includes one or moreprocessing units (CPUs) 1002, one or more network interfaces 1004,memory 1006, and one or more communication buses 1008 forinterconnecting these components (sometimes called a chipset). Computingdevice 730 also includes a user interface 1010. User interface 1010includes one or more output devices 1012 that enable presentation ofmedia content, including one or more speakers and/or one or more visualdisplays. User interface 1010 also includes one or more input devices1014, including user interface components that facilitate user inputsuch as a keyboard, a mouse, a voice-command input unit or microphone, atouch-screen display, a touch-sensitive input pad, a gesture capturingcamera, or other input buttons or controls. Memory 1006 includeshigh-speed random access memory, such as DRAM, SRAM, DDR RAM, or otherrandom access solid state memory devices; and, optionally, includesnon-volatile memory, such as one or more magnetic disk storage devices,optical disk storage devices, flash memory devices, or othernon-volatile solid state storage devices. Memory 1006, optionally,includes one or more storage devices remotely located from CPU(s) 1002.Memory 1006, or alternately the non-volatile memory device(s) withinmemory 1006, includes a non-transitory computer readable storage medium.In some implementations, memory 1006, or the non-transitory computerreadable storage medium of memory 1006, stores the following programs,modules, and data structures, or a subset or superset thereof:

-   -   an operating system 1016 including procedures for handling        various basic system services and for performing hardware        dependent tasks; and    -   a network communication module 1018 for connecting computing        device 730 to other computing devices (e.g., server system 706)        connected to one or more networks 710 via one or more network        interfaces 1004 (wired or wireless).

In some embodiments, memory 1006 also includes an audio processingmodule 600/650 for generating audio (e.g., sound effects) for arespective game (or application). Audio processing module 600/650includes, but is not limited to:

-   -   an interface unit 602 for enabling presentation of information        (e.g., an audio processing user interface for generating sound        effects for the respective game) at computing device 730 via one        or more output devices 1012 (e.g., displays, speakers, etc.)        associated with user interface 1010;    -   a receiving unit 604 for receiving commands (e.g., scene element        library generation or combination commands) from a user of        computing device 730 by detecting one or more user inputs or        interactions with the user interface generated by interface unit        602 and interpreting the detected input or interaction;    -   a scene element library generating unit 1026 for generating and        storing a scene element library 1030, including but not limited        to:        -   a first splitting unit 652 for splitting the audio file(s)            for the game into sound effect units;        -   a second splitting unit 654 for splitting scenes of the game            into scene elements;        -   an associating unit 656 for associating one or more sound            effect units with each scene element to generate a scene            element library 1030; and    -   scene element library 1030 including a plurality of scene        elements and a corresponding set of sound effect units for each        scene element;    -   a storing unit 828 for storing scene element library 1030;    -   a template obtaining unit 834 for generating a scene element        template (e.g., including one or more scene elements) for a        respective in-game scene and storing the scene element template        in template library 1034 (e.g., including a plurality of scene        element templates for the respective game);    -   a collecting unit 606 for collecting one or more sound effect        units corresponding to each of the selected scene elements;    -   a combining unit 608 for combining the collected sound effect        units to generate a composite sound effect for the respective        scene and storing the composite sound effect as a sound effect        file associated with the respective scene in audio file(s) 1046;        and    -   game files 1040 corresponding to the respective game, including        but not limited to:        -   game music files 1042, including but not limited to:            -   a background music file 1044 including a soundtrack or a                plurality of music files to be played in the background                while playing the respective game; and            -   one or more audio files 1046 including sound effect                files and/or sound clips for various scenes or events in                the respective game (e.g., at least one sound effect                file for each scene);        -   one or more video files 1048 including information for            rendering the respective game; and        -   a system configuration file 1050 including a plurality of            parameters associated with audio processing.

Each of the above identified elements may be stored in one or more ofthe previously mentioned memory devices, and corresponds to a set ofinstructions for performing a function described above. The aboveidentified modules or programs (i.e., sets of instructions) need not beimplemented as separate software programs, procedures, modules or datastructures, and thus various subsets of these modules may be combined orotherwise re-arranged in various implementations. In someimplementations, memory 1006, optionally, stores a subset of the modulesand data structures identified above. Furthermore, memory 1006,optionally, stores additional modules and data structures not describedabove.

While particular embodiments are described above, it will be understoodit is not intended to limit the invention to these particularembodiments. On the contrary, the invention includes alternatives,modifications and equivalents that are within the spirit and scope ofthe appended claims. Numerous specific details are set forth in order toprovide a thorough understanding of the subject matter presented herein.But it will be apparent to one of ordinary skill in the art that thesubject matter may be practiced without these specific details. In otherinstances, well-known methods, procedures, components, and circuits havenot been described in detail so as not to unnecessarily obscure aspectsof the embodiments.

What is claimed is:
 1. A method of sound effect production for games, comprising: at an electronic device with one or more processors and memory: storing one or more respective sound effect units in association with each of a plurality of scene elements used in a game; obtaining a scene element template for a respective scene in the game, the scene element template including one or more constituent scene elements of the respective scene; selecting one or more corresponding sound effect units for each of the one or more constituent scene elements in the scene element template for the respective scene; and generating a composite sound effect for the respective scene using the selected sound effect units.
 2. The method of claim 1, further comprising: prior to the storing, generating a scene element library containing a list of possible scene elements for constructing game scenes.
 3. The method of claim 1, further comprising: after generating the composite sound effect, presenting the composite sound effect in real-time during game play.
 4. The method of claim 1, further comprising: determining the respective scene; and wherein obtaining the scene element template for the respective scene includes generating the scene element template based on the determined respective scene.
 5. The method of claim 1, wherein the one or more scene elements in the scene element template are arranged according to a time sequence with a plurality of time intervals.
 6. The method of claim 5, wherein two or more scene elements are associated with a same time interval of the plurality of time intervals in the time sequence.
 7. The method of claim 1, wherein the composite sound effect is dynamically generated during game play.
 8. The method of claim 1, wherein each of the selected sound effect units is randomly selected from a set of respective sound effect units stored in association with a respective constituent scene element of the scene element template.
 9. An electronic device, comprising: one or more processors; and memory storing one or more programs to be executed by the one or more processors, the one or more programs comprising instructions for: storing one or more respective sound effect units in association with each of a plurality of scene elements used in a game; obtaining a scene element template for a respective scene in the game, the scene element template including one or more constituent scene elements of the respective scene; selecting one or more corresponding sound effect units for each of the one or more constituent scene elements in the scene element template for the respective scene; and generating a composite sound effect for the respective scene using the selected sound effect units.
 10. The electronic device of claim 9, wherein the one or more programs further comprise instructions for: prior to the storing, generating a scene element library containing a list of possible scene elements for constructing game scenes.
 11. The electronic device of claim 9, wherein the one or more programs further comprise instructions for: after generating the composite sound effect, presenting the composite sound effect in real-time during game play.
 12. The electronic device of claim 9, wherein the one or more programs further comprise instructions for: determining the respective scene; and wherein obtaining the scene element template for the respective scene includes generating the scene element template based on the determined respective scene.
 13. The electronic device of claim 9, wherein the composite sound effect is dynamically generated during game play.
 14. The electronic device of claim 9, wherein each of the selected sound effect units is randomly selected from a set of respective sound effect units stored in association with a respective constituent scene element of the scene element template.
 15. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by an electronic device with one or more processors, cause the electronic device to perform operations comprising: storing one or more respective sound effect units in association with each of a plurality of scene elements used in a game; obtaining a scene element template for a respective scene in the game, the scene element template including one or more constituent scene elements of the respective scene; selecting one or more corresponding sound effect units for each of the one or more constituent scene elements in the scene element template for the respective scene; and generating a composite sound effect for the respective scene using the selected sound effect units.
 16. The non-transitory computer readable storage medium of claim 15, wherein the instructions cause the electronic device to perform operations further comprising: prior to the storing, generating a scene element library containing a list of possible scene elements for constructing game scenes.
 17. The non-transitory computer readable storage medium of claim 15, wherein the instructions cause the electronic device to perform operations further comprising: after generating the composite sound effect, presenting the composite sound effect in real-time during game play.
 18. The non-transitory computer readable storage medium of claim 15, wherein the instructions cause the electronic device to perform operations further comprising: determining the respective scene; and wherein obtaining the scene element template for the respective scene includes generating the scene element template based on the determined respective scene.
 19. The non-transitory computer readable storage medium of claim 15, wherein the composite sound effect is dynamically generated during game play.
 20. The non-transitory computer readable storage medium of claim 15, wherein each of the selected sound effect units is randomly selected from a set of respective sound effect units stored in association with a respective constituent scene element of the scene element template. 